This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
A software facility that establishes a wrapper around a native synchronization mechanism provided by an operating system and native functions called to interact with the native synchronization mechanism in order to preclude undesirable behavior of the native synchronization mechanism (“the facility”) is described. As part of the wrapper, the facility provides an analog for each of the native synchronization object functions as follows:                safeInitialize: analog of Initialize        safeAcquire: analog of Acquire        safeRelease: analog of Release        safeDelete: analog of Delete        